Apple M1#

Notes#

Default#

sysctl -a | grep ^hw | grep cpu#

hw.ncpu: 8
hw.activecpu: 8
hw.perflevel0.physicalcpu: 4
hw.perflevel0.physicalcpu_max: 4
hw.perflevel0.logicalcpu: 4
hw.perflevel0.logicalcpu_max: 4
hw.perflevel0.cpusperl2: 4
hw.perflevel1.physicalcpu: 4
hw.perflevel1.physicalcpu_max: 4
hw.perflevel1.logicalcpu: 4
hw.perflevel1.logicalcpu_max: 4
hw.perflevel1.cpusperl2: 4
hw.physicalcpu: 8
hw.physicalcpu_max: 8
hw.logicalcpu: 8
hw.logicalcpu_max: 8
hw.cputype: 16777228
hw.cpusubtype: 2
hw.cpu64bit_capable: 1
hw.cpufamily: 458787763
hw.cpusubfamily: 2

roq-deribit-benchmark (roq-deribit)#

2022-03-24T06:55:03+01:00
Running roq-deribit-benchmark
Run on (8 X 24.2376 MHz CPU s)
CPU Caches:
L1 Data 64 KiB (x8)
L1 Instruction 128 KiB (x8)
L2 Unified 4096 KiB (x2)
Load Average: 9.20, 5.31, 3.79
-------------------------------------------------------------------------------------------------
Benchmark                                                       Time             CPU   Iterations
-------------------------------------------------------------------------------------------------
BM_fix_execution_report_parse_message                         306 ns          306 ns      2270886
BM_fix_heartbeat_parse_message                               85.1 ns         85.1 ns      8231517
BM_fix_logon_parse_message                                    159 ns          159 ns      4400772
BM_fix_logon_create_message                                   193 ns          193 ns      3603938
BM_fix_logout_parse_message                                  84.9 ns         84.9 ns      8235100
BM_fix_market_data_increment_refresh_parse_message_1          246 ns          246 ns      2844835
BM_fix_market_data_increment_refresh_parse_message_2          863 ns          863 ns       810345
BM_fix_market_data_request_reject_parse_message              94.6 ns         94.6 ns      7428474
BM_fix_market_data_snapshot_full_refresh_parse_message      11759 ns        11759 ns        59394
BM_fix_new_order_single_create_message                        319 ns          319 ns      2175589
BM_fix_order_cancel_reject_parse_message                      103 ns          103 ns      6819023
BM_fix_order_cancel_replace_request_create_message            347 ns          347 ns      2001184
BM_fix_order_cancel_request_create_message                    129 ns          129 ns      5313174
BM_fix_position_report_parse_message                          269 ns          269 ns      2600471
BM_fix_reject_parse_message                                   104 ns          104 ns      6729540
BM_fix_security_list_parse_message                          64270 ns        64270 ns        10950
BM_fix_user_response_parse_message                            214 ns          214 ns      3268187

roq-benchmark (roq-tools)#

2022-03-24T06:55:39+01:00
Running roq-benchmark
Run on (8 X 24.2417 MHz CPU s)
CPU Caches:
L1 Data 64 KiB (x8)
L1 Instruction 128 KiB (x8)
L2 Unified 4096 KiB (x2)
Load Average: 6.32, 5.07, 3.77
-----------------------------------------------------------------------------------------
Benchmark                                               Time             CPU   Iterations
-----------------------------------------------------------------------------------------
BM_roq_charconv_parse_number_uint64                  6.44 ns         6.44 ns    108854424
BM_roq_charconv_parse_number_double                  8.21 ns         8.21 ns     85339835
BM_fast_float_from_chars_double                      9.68 ns         9.68 ns     72288659
BM_roq_charconv_parse_number_double_scientific       12.5 ns         12.5 ns     55848539
BM_fast_float_from_chars_double_scientific           10.8 ns         10.8 ns     64956155
BM_Codec_Encode_DownloadBegin                        8.88 ns         8.88 ns     77572641
BM_Codec_Decode_DownloadBegin                        4.95 ns         4.95 ns    140635956
BM_Codec_Encode_DownloadEnd                          11.6 ns         11.6 ns     60536352
BM_Codec_Decode_DownloadEnd                          4.97 ns         4.97 ns    123287189
BM_Codec_Encode_GatewaySettings                      26.9 ns         26.9 ns     26059796
BM_Codec_Decode_GatewaySettings                      6.90 ns         6.90 ns    100183192
BM_Codec_Encode_StreamStatus                         20.6 ns         20.6 ns     33370677
BM_Codec_Decode_StreamStatus                         10.1 ns         10.1 ns     70677800
BM_Codec_Encode_ExternalLatency                      13.1 ns         13.1 ns     54326315
BM_Codec_Decode_ExternalLatency                      6.94 ns         6.94 ns     77093360
BM_Codec_Encode_RateLimitTrigger                     46.4 ns         46.4 ns     15605945
BM_Codec_Decode_RateLimitTrigger                     18.4 ns         18.4 ns     38374879
BM_Codec_Encode_GatewayStatus                        15.6 ns         15.6 ns     44820940
BM_Codec_Decode_GatewayStatus                        9.13 ns         9.13 ns     87447531
BM_Codec_Encode_ReferenceData                         120 ns          120 ns      5616851
BM_Codec_Decode_ReferenceData                        59.1 ns         59.1 ns     11387298
BM_Codec_Encode_MarketStatus                         21.9 ns         21.9 ns     33429802
BM_Codec_Decode_MarketStatus                         12.9 ns         12.9 ns     53494326
BM_Codec_Encode_TopOfBook                            41.2 ns         41.2 ns     17500963
BM_Codec_Decode_TopOfBook                            19.8 ns         19.8 ns     35225443
BM_Codec_Encode_MarketByPrice                        61.9 ns         61.9 ns     11294148
BM_Codec_Decode_MarketByPrice                        25.5 ns         25.5 ns     28816783
BM_Codec_Decode_MarketByPrice_Handler                26.2 ns         26.2 ns     26347486
BM_Codec_Encode_MarketByOrder                        60.1 ns         60.1 ns     11524341
BM_Codec_Decode_MarketByOrder                        23.6 ns         23.6 ns     30222176
BM_Codec_Decode_MarketByPrice_Handler                25.0 ns         25.0 ns     27356039
BM_Codec_Encode_TradeSummary                         29.1 ns         29.1 ns     21666460
BM_Codec_Decode_TradeSummary                         12.8 ns         12.8 ns     49437821
BM_Codec_Encode_StatisticsUpdate                     39.8 ns         39.8 ns     21040229
BM_Codec_Decode_StatisticsUpdate                     15.0 ns         15.0 ns     43650150
BM_Codec_Encode_CreateOrder                          69.5 ns         69.5 ns     10004574
BM_Codec_Decode_CreateOrder                          31.3 ns         31.3 ns     25012685
BM_Codec_Encode_ModifyOrder                          40.1 ns         40.1 ns     16769881
BM_Codec_Decode_ModifyOrder                          15.3 ns         15.3 ns     45318590
BM_Codec_Encode_CancelOrder                          26.5 ns         26.5 ns     26776732
BM_Codec_Decode_CancelOrder                          12.0 ns         12.0 ns     57054365
BM_Codec_Encode_CancelAllOrders                      9.01 ns         9.01 ns     78091009
BM_Codec_Decode_CancelAllOrders                      4.35 ns         4.35 ns    175100245
BM_Codec_Encode_OrderAck                             84.0 ns         84.0 ns      8491024
BM_Codec_Decode_OrderAck                             38.5 ns         38.5 ns     17499431
BM_Codec_Encode_OrderUpdate                           128 ns          128 ns      5333780
BM_Codec_Decode_OrderUpdate                          61.4 ns         61.4 ns     12230492
BM_Codec_Encode_TradeUpdate                          77.6 ns         77.6 ns      8730030
BM_Codec_Decode_TradeUpdate                          35.6 ns         35.6 ns     21621622
BM_Codec_Encode_PositionUpdate                       48.4 ns         48.4 ns     14447825
BM_Codec_Decode_PositionUpdate                       26.8 ns         26.8 ns     24572440
BM_Codec_Encode_FundsUpdate                          32.5 ns         32.5 ns     22800189
BM_FlatBuffers_Encode_DownloadBegin                  66.3 ns         66.3 ns      9999286
BM_FlatBuffers_Decode_DownloadBegin                  9.02 ns         9.02 ns     77683694
BM_FlatBuffers_Encode_DownloadEnd                    70.5 ns         70.5 ns      9775171
BM_FlatBuffers_Decode_DownloadEnd                    9.74 ns         9.74 ns     71927661
BM_FlatBuffers_Encode_GatewaySettings                81.2 ns         81.2 ns      8391072
BM_FlatBuffers_Decode_GatewaySettings                12.5 ns         12.5 ns     56594468
BM_FlatBuffers_Encode_StreamStatus                   81.7 ns         81.7 ns      8876152
BM_FlatBuffers_Decode_StreamStatus                   11.2 ns         11.2 ns     59564836
BM_FlatBuffers_Encode_ExternalLatency                78.4 ns         78.4 ns      8931192
BM_FlatBuffers_Decode_ExternalLatency                10.2 ns         10.2 ns     68371393
BM_FlatBuffers_Encode_RateLimitTrigger                214 ns          214 ns      3215257
BM_FlatBuffers_Decode_RateLimitTrigger               70.4 ns         70.4 ns      9602195
BM_FlatBuffers_Encode_ReferenceData                   223 ns          223 ns      3187251
BM_FlatBuffers_Decode_ReferenceData                  19.0 ns         19.0 ns     36375352
BM_FlatBuffers_Encode_MarketStatus                   84.8 ns         84.8 ns      8102696
BM_FlatBuffers_Decode_MarketStatus                   11.1 ns         11.1 ns     61626228
BM_FlatBuffers_Encode_TopOfBook                       111 ns          111 ns      6225653
BM_FlatBuffers_Decode_TopOfBook                      15.0 ns         15.0 ns     45188112
BM_FlatBuffers_Encode_MarketByPrice                   513 ns          513 ns      1000000
BM_FlatBuffers_Decode_MarketByPrice                  55.5 ns         55.5 ns     12468606
BM_FlatBuffers_Encode_MarketByOrder                   539 ns          539 ns      1302059
BM_FlatBuffers_Decode_MarketByOrder                   126 ns          126 ns      5566999
BM_FlatBuffers_Encode_TradeSummary                    275 ns          275 ns      2562657
BM_FlatBuffers_Decode_TradeSummary                   71.3 ns         71.3 ns     10045203
BM_FlatBuffers_Encode_StatisticsUpdate                244 ns          244 ns      2852323
BM_FlatBuffers_Decode_StatisticsUpdate               30.7 ns         30.7 ns     22817282
BM_FlatBuffers_Encode_CreateOrder                     141 ns          141 ns      4885812
BM_FlatBuffers_Decode_CreateOrder                    15.7 ns         15.7 ns     44287260
BM_FlatBuffers_Encode_ModifyOrder                    95.2 ns         95.2 ns      7323938
BM_FlatBuffers_Decode_ModifyOrder                    12.8 ns         12.8 ns     53255833
BM_FlatBuffers_Encode_CancelOrder                    90.0 ns         90.0 ns      7797705
BM_FlatBuffers_Decode_CancelOrder                    11.6 ns         11.6 ns     60064183
BM_FlatBuffers_Encode_CancelAllOrders                68.2 ns         68.2 ns     10038865
BM_FlatBuffers_Decode_CancelAllOrders                9.01 ns         9.01 ns     77545142
BM_FlatBuffers_Encode_OrderAck                        180 ns          180 ns      3712563
BM_FlatBuffers_Decode_OrderAck                       17.1 ns         17.1 ns     41138478
BM_FlatBuffers_Encode_OrderUpdate                     204 ns          204 ns      3366469
BM_FlatBuffers_Decode_OrderUpdate                    20.4 ns         20.4 ns     35145326
BM_FlatBuffers_Encode_TradeUpdate                     329 ns          329 ns      2290134
BM_FlatBuffers_Decode_TradeUpdate                    69.3 ns         69.3 ns     12191299
BM_FlatBuffers_Encode_PositionUpdate                  123 ns          123 ns      5739304
BM_FlatBuffers_Decode_PositionUpdate                 14.1 ns         14.1 ns     49553312
BM_FlatBuffers_Encode_FundsUpdate                    97.9 ns         97.9 ns      7064998
BM_FlatBuffers_Decode_FundsUpdate                    12.5 ns         12.5 ns     55842301
BM_MarketByOrder_Add_New_Remove                      69.0 ns         69.0 ns     10148605
BM_MarketByOrder_Add_Exists_Remove                   27.8 ns         27.8 ns     25252070
BM_MarketByOrder_Modify_Exists                       27.9 ns         27.9 ns     25113819
BM_MarketByPrice_MarketByPrice                       67.7 ns         67.7 ns     10343401